@keyframes scale-pulse
{
    0% {
        transform: scale(1,1);
    }
    50% {
        transform: scale(0.95,0.95);
    }
    100% {
        transform: scale(1,1);
    }
}
.scale-pulse {
    animation: scale-pulse .5s infinite;
    animation-timing-function: ease-in-out;
}
@keyframes golden-pulse
{
    0% {
        box-shadow:  0 0 5px #e4ee50;
    }
    50% {
        box-shadow:  0 0 15px #e4ee50;
    }
    100% {
        box-shadow:  0 0 5px #e4ee50;
    }
}
.golden-pulse {
    animation: golden-pulse 1s infinite;
    animation-timing-function: ease-in-out;
}
@keyframes red-pulse
{
    0% {
        box-shadow: inset 0 0 5px #ee7878;
    }
    50% {
        box-shadow: inset 0 0 15px #ee7878;
    }
    100% {
        box-shadow: inset 0 0 5px #ee7878;
    }
}
.red-pulse {
    animation: red-pulse 1s infinite;
    animation-timing-function: ease-in-out;
}
@keyframes alpha-pulse
{
    0% {
        opacity: 0.5;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0.5;
    }
}
.gold-color{
    color: #e4ee50 !important;
}
.line-through{
    text-decoration: line-through;
}
.alpha-pulse {
    animation: alpha-pulse 1s infinite;
    animation-timing-function: ease-in-out;
}
.slide-fade-enter-active {
    transition: all .05s ease;
}
.slide-fade-leave-active {
    transition: all .01s cubic-bezier(1.0, 0.5, 0.8, 1.0);
}
.slide-fade-enter{
    display: inline-block;
    transform: scale(1.1,1.1);
}

.progress-fade-enter-active {

}
.progress-fade-leave-active{
    transition: all .5s ease!important;
    opacity: 0;
}
.progress-fade-leave-to {
    width: 100%!important;
}
.tooltip{
    font-size: 1.6vh;
}
.container{
    max-width: initial;
}
.currency-title{
    width: initial;
    flex-basis: auto;
    flex-grow: 0;
}
.l-col{
    flex-basis: auto;
    width: initial;
}
.progress-fade-enter{
    transition: all 0s ease!important;
    display: inline-block;
    opacity: 1!important;
    width: 0;
}
.progress-fade-leave{
    transition: all 0s ease!important;
    width: 100%!important;
    opacity: 1!important;
}

.progress-bar{
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

body {
    margin: 0;
    background: white;
    height: 100vh;
    /*width: 100vw;*/
    overflow-x: hidden;
    overflow-y: auto;
}
canvas {
    margin: auto;
}
h1{
    font-size: 3vh;
}
h2{
    font-size: 2vh;
}
.done{
    background-color: rgba(0, 250, 0, 0.19) !important;
}
hr{
    margin-bottom: 0.5vh;
    margin-top: 0.5vh;
}
.card {
    background-color: darkcyan;
    padding: 0.5vh;
}
.hide{
    display: none;
}
.levelable-progress-text {
    font-size: 1.5vh;
    text-align: right;
}
.invisible{
    opacity: 0;
}
.btn-icon{
    line-height: 0;
}
.fas{
    font-size: 2vh;
}
.far{
    font-size: 2vh;
}
.fab{
    font-size: 2vh;
}
.table td, .table th{
    padding: 1vh;
}
.col{
    margin-bottom: 0.5vh;
}
.col-lg-6{
    margin-bottom: 0.5vh;
}
#ui{
    position: absolute;
    color: white;
    text-shadow: -0.1vh 0 black, 0 0.1vh black, 0.1vh 0 black, 0 -0.1vh black;
    width: 100%;
    height: 100%;
    background-color: cadetblue;
    font-size: 1.6vh;

    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+/Edge */
    user-select: none; /* Standard */
    touch-action: none;
}
.achievementContent{
    overflow-y: auto;
    height: 68vh;
}
#loading{
    position: absolute;
    width: 100%;
    height: 100%;
    color: white;
    font-size: 5vmin;
}
.version{
    position: absolute;
}
.loadingCenter{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
}
.loadingLogo{
    height: 50%;
    max-width: 90%;
}
.luts-header{
    padding-left: 0.5%;
    width: 100%;
    background: linear-gradient(0,darkcyan,cadetblue);
    display: flex;
    justify-content: space-between;
}
.luts-body{
    height: 95%;
    overflow-x: hidden;
    overflow-y: auto;
}
.btn{
    padding: 0.5vh;
    margin: 0.5vh;
    border-radius: 1vh;
    border-color: white!important;
    font-size: 1.6vh;
    border: 0.1vh solid white;
}
.upgrade-button{
    width: 15vh;
}
.progress{
    height: 0.5vh;
    margin-top: 0.3vh;
    position: relative;
}
.progress-bar{
    background-color: white;
}
.green-bg {
    background-color: green;
}
.btn:hover:not([disabled]){
    box-shadow: 0 0 1vmin white;
}
.btn:active:not([disabled]){
    transform: scale(0.9);
}
@media screen and (orientation: landscape) {
    .col-side {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
        overflow-y: auto;
        height: 95vh;
    }
    .col-main {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
    .tabs-main {
        height: 87vh;
        overflow-y: auto;
    }
}
.modal-mask {
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    transition: opacity .3s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.error{
    color: #ee7878;
}
.tabs a:hover {
    //border-bottom-color: #ffffff;
    box-shadow: inset 0 -1vh 0.6vh -0.6vh white;
    color: #ffffff;
}
.tabs .is-active a {
    color: #ffffff;
    border-bottom-color: #ffffff;
    /* border-bottom: 0; */
    text-shadow: -0.1vh 0 black, 0 0.1vh black, 0.1vh 0 black, 0 -0.1vh black;
}
.tabs a {
    transition: all .2s ease;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 1px solid #777777;
    color: #777777;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: -1px;
    padding: .5em 1em;
    vertical-align: top;
    text-shadow: initial;
    cursor: pointer;
}
.modal-header{
    padding: 1vh;
}
.modal-footer {
    justify-content: space-around;
    padding: 0.5vh
}

.modal-container {
    width: 90%;
    margin: 0px auto 0;
    height: 90%;
    padding: 2vmin;
    background-color: #fff;
    background: linear-gradient(0,cadetblue,darkcyan);
    border: lightblue ridge 1vmin;
    border-top-left-radius: 5vmin;
    border-bottom-right-radius: 5vmin;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .33);
    transition: all .3s ease;
    font-family: Helvetica, Arial, sans-serif;
}

::-webkit-scrollbar {
    width: 4px;
    background-color: #303030;
}
::-webkit-scrollbar-thumb {
    background-color: #888;
}

.popup{
    width: 50%;
    height: initial;
}

.modal-header h3 {
    margin-top: 0;
    color: #42b983;
}

.modal-body {
    background: rgba(255,255,255,0.1);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scroll: touch;
    height: 90%;
    padding: 1vmin;
    border-bottom-right-radius: 5vmin;
}
.popup > .modal-body{
    height: initial;
}

.achievement-label{
    top: initial;
    bottom: 10px;
    height: initial;
    background-color: initial;
}
.text-right {
    text-align: right;
}

/*
 * The following styles are auto-applied to elements with
 * transition="modal" when their visibility is toggled
 * by Vue.js.
 *
 * You can easily play with the modal transition by editing
 * these styles.
 */

.modal-enter {
    opacity: 0;
}

.modal-leave-active {
    opacity: 0;
}

.modal-enter .modal-container,
.modal-leave-active .modal-container {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.vue-tabs .nav-tabs>li.active>a, .vue-tabs .nav-tabs>li.active>a:hover, .vue-tabs .nav-tabs>li.active>a:focus {
    background-color: rgba(0,0,0,0);
    color: white;
}
.vue-tabs .tabs__link {
    color: white;
}
.tab-container {
    overflow-y: auto;
/*    overflow-x: hidden;*/
}
.vue-tabs .nav>li>a {
    padding: 1vh 1.5vh;
}

tr:nth-child(odd) {
    background: #0000000f;
}

.vue-tabs{
   /* height: 100%;*/
}
.tab-content{
    height: 94%;
    overflow-y: auto;
}
.tab-content-main{
    height: 84vh;
    overflow-y: auto;
}
.btn-primary{
    background-color: transparent!important;
}
.btn{
    text-shadow: -0.1vh 0 black, 0 0.1vh black, 0.1vh 0 black, 0 -0.1vh black;
}
#turn{
    width:100%;
    height:100%;
    position:fixed;
    top:0;
    left:0;
    background-color:white;
    display:none;
}
#text{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2em;
    font-family: Verdana monospace;
    color: slategray;
}
#savePrompt{
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: none;
}
#promptWindow{
    color: white;
    position: absolute;
    top: 25%;
    left: 25%;
    width: 50%;
    height: 25%;
}
#save{
    resize: none;
    width: 100%;
    height: 40vh;
}
#load{
    resize: none;
    width: 100%;
    height: 40vh;
}
#gameDiv{
    height: 100%;
    width: 100%;
}
@font-face {
    font-family: 'regular';
    src: url('../assets/fonts/robotomono-thin-webfont.woff2') format('woff2'),
    url('../assets/fonts/robotomono-thin-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'text';
    src: url('../assets/fonts/roboto-thin-webfont.woff2') format('woff2'),
    url('../assets/fonts/roboto-thin-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}